草庐IT

ios - SVG套件。 NSString 到 SVGKImage?

全部标签

javascript - 重叠 SVG 元素上的鼠标事件

如何处理重叠svg元素上的点击事件?我正在使用Reaphael.js库。问题是topDOM元素正在拦截鼠标事件,即使底部元素没有被任何绘图重叠。我的问题是如何使我的示例中的两个圆圈都可点击并仍然将它们保留在两个svg元素中?这是我的代码:CSS:#container{position:relative;width:200px;height:200px}#container>svg{position:absolute!important;top:0;left:0;}JavaScript:vartopLayer=Raphael('container',200,200);varbottomL

javascript - 在 JavaScript 中动态创建 SVG 链接

我正在从JavaScript动态创建SVG元素。它适用于像矩形这样的可视对象,但我在生成有效的xlink时遇到了问题。在下面的示例中,第一个矩形(静态定义的)在点击时可以正常工作,但其他两个(用JavaScript创建)忽略点击......即使在Chrome中检查元素似乎显示相同的结构。我见过很多类似的问题,但没有一个能准确解决这个问题。我找到的最接近的是[addingimagenamespaceinsvgthroughJSstilldoesn'tshowmethepicture]但这不起作用(如下所述)。我的目标是完全在JavaScript中完成此操作,而不依赖于JQuery或其他库

javascript - [Socket.io/Node.js]获取客户​​端连接用户列表

我在socket.io客户端中遇到问题,因为我无法在我的客户端中显示所有用户用户名的列表。我只是socket.io的新手,我知道如何在服务器端编码。我在客户端编程方面遇到困难。我只想在我的client.html中显示连接的用户用户名.这是我在server.js中的一些代码varusers=[];app.get('/',function(req,res){res.sendfile(__dirname+'/index.html');});io.sockets.on('connection',function(socket){socket.on('adduser',function(user

javascript - Snap.svg - 停止在悬停元素的子元素上重新触发悬停事件

对于一个项目,我使用的SVG形状由背景多边形和背景多边形上方的一些文本(我已将其转换为路径)组成。我正在使用Snap.svg为我的形状制作动画。当我将鼠标悬停在我的多边形上时,形状应该缩放到特定大小,包括其中的所有内容。鼠标移开时,形状会缩小到原来的大小。在这里你可以找到一个简化的例子:http://jsfiddle.net/XwwwU/11/我是这样实现的:SVG/HTML"/>JavaScriptvars=Snap.select('svg');varel=s.select('.el');el.hover(function(){el.animate({transform:"t0,0s

javascript - 使用 React.JS 检索和缓存 SVG 节点边界框​​的最佳方法

我正在渲染带有标签的SVG组件。这些标签组件需要根据它们的文本内容(以及它们的大小)正确布局,以避免相互重叠。要获得每个标签的真实大小,似乎每次更新标签内容时都需要双重渲染。在标签组件级别,我需要第一次渲染检索真实SVGDOM节点的边界框出于性能原因缓存边界框重新渲染组件以根据其缓存的边界框调整标签位置然后,在每次重绘时:根据缓存的边界框渲染比较之前和更新的props之间的标签内容,如果有变化:更新并缓存标签边界框根据更新和缓存的边界框重新渲染到目前为止,这是我实现标签组件的方式:varLabel=React.createClass({updateBBox:function(){//T

javascript - 带有 websocket 的 Node.js socket.io

我是Node.js或websocket的初学者。我有问题:我的HTML代码:test"usestrict";vargniazdo=newWebSocket('ws://localhost:3000');gniazdo.onopen=function(){console.log('Połączono');};gniazdo.onmessage=function(m){console.log(m.data);};我的Node.js代码:vario=require('socket.io')(3000);io.on('connection',function(socket){console.l

javascript - NodeJS & Socket.IO : Emit a request event and get the response, 我应该何时/何地绑定(bind)监听器?

我目前想知道在这种情况下什么是最佳编程实践:假设我已将客户端连接到我的服务器。这个客户端要求服务器使用auth事件和他的用户名进行身份验证。socket=io();socket.emit('auth',"John");在这个简单的例子中,服务器响应一个带有用户ID的auth_succeed事件。io.on('connection',function(socket){socket.on('auth',function(username){socket.emit('auth_succeed',id);}}所以我的问题是,我应该在何时何地为客户端中的auth_succeed事件绑定(bind

javascript - 使用 Javascript 获取 SVG 路径的绝对坐标

我正在创建一个将SVG文件转换为我自己的格式的程序。我已经创建了一个基于Web的应用程序来执行此操作。我使用网络浏览器的默认DOM解析功能来迭代SVG内容。使用Javascript,我可以使用以下方法获取SVG路径元素:varpath=document.getElementById("path3388");我可以使用以下方法获取路径段:varpathSegments=path.pathSegList然而,这些路径段是相对于定义的任何父SVG元素而言的。转换不包含在路径段列表中。有没有办法获取此路径的绝对坐标,因为它们最终会在屏幕上绘制时使用?示例:假设我得到了以下SVG片段:我想要检索

javascript - 在鼠标悬停的 SVG 路径周围添加区域

有没有办法在svg生成的图形中的直线路径上添加区域?我希望用户能够将鼠标悬停在附近上,而不仅仅是悬停在折线图上的一条线上,并在鼠标悬停后发生一些事情。目前,使用我的代码,您必须将鼠标悬停在实际的行上。但是我想在该行周围设置一个区域。(给路径加padding好像不行) 最佳答案 我的方法是在第一个上绘制第二个路径,它使用相同的数据和线条功能,但它是透明的并且具有更大的stroke-width。然后将mouseover和mouseout监听器附加到fatter行。在这里fiddle:http://jsfiddle.net/henbox/

javascript - nightwatch.js 在测试套件结束时暂停

我一直在使用nightwatch.js进行功能测试自动化。问题是测试套件完成后测试暂停。它不会结束该过程。代码如下所示:varafterSuite=function(browser){dbFixture.deleteCollectionItemById(companyId,'cilents');dbFixture.deleteCollectionItemById(customerId,'users');dbFixture.deleteCollectionItemById(assetId,'assets');dbFixture.deleteFile(imageId);browser.en